Cloud computing is the use of computing resources (hardware and software) that are available in a remote location and accessible over a network, such as the Internet. In a computing environment with many computing devices, such as a virtual server or cloud computing environment with many server computers, the use of computing resources can provide a number of advantages including cost advantages and/or the ability to adapt rapidly to changing computing resource needs.
With the increased use of computing resources, reliability of software deployment is essential. For example, deploying new software to a server can result in a misconfiguration or unintended change being introduced with the new software resulting in the server being in some way impaired or degraded. Depending on the size of the server fleet, software deployment which causes misconfiguration in one or more server settings can impact many servers prior to the issue becoming known. It can also be the case that a misconfiguration will go undetected by monitoring that is in place prior to the software deployment.